From 3af7a69d2a3a666c0073317675b9029bd279537d Mon Sep 17 00:00:00 2001 From: "cl349@freefall.cl.cam.ac.uk" Date: Wed, 6 Oct 2004 13:03:13 +0000 Subject: [PATCH] bitkeeper revision 1.1159.1.209 (4163ed11XmoH7YafgdjHd_l9zZsOOg) Update pteidx of disconnected va space even in shadow mode. --- xen/arch/x86/memory.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/xen/arch/x86/memory.c b/xen/arch/x86/memory.c index 654ec044c7..956e61aa9e 100644 --- a/xen/arch/x86/memory.c +++ b/xen/arch/x86/memory.c @@ -1776,12 +1776,15 @@ int ptwr_do_page_fault(unsigned long addr) ptwr_flush(which); ptwr_info[cpu].ptinfo[which].l1va = addr | 1; - if (which == PTWR_PT_ACTIVE && likely(!current->mm.shadow_mode)) { + if (which == PTWR_PT_ACTIVE) { ptwr_info[cpu].active_pteidx = va_mask; - /* disconnect l1 page (unnecessary in shadow mode) */ - nl2e = mk_l2_pgentry((l2_pgentry_val(*pl2e) & ~_PAGE_PRESENT)); - update_l2e(pl2e, *pl2e, nl2e); - flush_tlb(); + if ( likely(!current->mm.shadow_mode) ) { + /* disconnect l1 page (unnecessary in shadow mode) */ + nl2e = mk_l2_pgentry((l2_pgentry_val(*pl2e) & + ~_PAGE_PRESENT)); + update_l2e(pl2e, *pl2e, nl2e); + flush_tlb(); + } } ptwr_info[cpu].ptinfo[which].pl1e = -- 2.30.2